package com.ybkj.daijia.server.service;

import com.ybkj.daijia.common.Result;
import com.ybkj.daijia.page.Page;
import com.ybkj.daijia.server.mc.Passenger;
import com.ybkj.daijia.server.model.Receipt;
import java.util.Date;
import java.util.List;

/**
 * @author Shine
 */
public interface ReceiptService {

    int save(Receipt receipt);// // 保存发票

    int delete(Long id); // 根据主键删除发票

    int update(Receipt receipt); // 根据主键修改发票状态

    Receipt findById(Long id); // 根据主键查询发票

    List<Receipt> findByMemberId(Long id); // 根据客户主键查询发票

    long findReceiptNumber(); // 查询未开发票总数

    List<Receipt> findAll(); // 查询所有发票

    public Page<Receipt> queryAll();

    public Page<Receipt> queryByMemberId(Long id, Integer page, Integer limit);    //根据分页信息和客户主键查询

    public Page<Receipt> findByParam(String param, Date start, Date end);    //根据多个差数查询发票

    Result<Receipt> createReceipt(Passenger passenger, Receipt receipt);

    Result<Receipt> delete(Passenger passenger, Receipt receipt);

    Page<Receipt> findAllByParam(String name, String number, String phone,
        Date start, Date end);

}
